package com.ziq.zcamp.dialog

import android.content.Context
import android.graphics.Color
import android.os.Bundle
import android.widget.Toast
import com.blankj.utilcode.util.SpanUtils
import com.ziq.base.base.BaseDialog
import com.ziq.base.extension.binding
import com.ziq.base.extension.click
import com.ziq.zcamp.databinding.DialogPrivacyBinding


class PrivacyDialog(context: Context, private val onCancel: ()->Unit, private val onConfirm: ()->Unit) : BaseDialog(context) {

    private val binding: DialogPrivacyBinding by binding()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setCanceledOnTouchOutside(false)
        setCancelable(false)
        binding.root
        binding.btnCancel.click {
            dismiss()
            onCancel.invoke()
        }
        binding.btnCommit.click {
            dismiss()
            onConfirm.invoke()
        }
        binding.btnUserServiceAgreement.click {
            Toast.makeText(context, "用户条款", Toast.LENGTH_SHORT).show()
        }

        binding.btnPrivacyPolicy.click {
            Toast.makeText(context, "隐私协议", Toast.LENGTH_SHORT).show()
        }

        val spanString = SpanUtils()
            .appendLine("亲爱的用户您好，为了保障用户权益，以下内容需要您明确授权，您有权随时拒绝或取消授权")
            .appendLine("1.为向您提供地图地位服务，在您使用“定位”功能时，我们会请求您授权地理定位（属于个人敏感信息）权限，并收集与上述功能相关的定位信息。我们收集定位信息的技术包括IP地址、GPS、WLAN等传感器技术。")
            .append("2.在您选择用设备内的任意一款地图软件进行导航时，高德地图地图SDK需要获取设备的「")
            .append("软件安装列表").setForegroundColor(Color.RED)
            .appendLine("」，您如果不同意或拒绝授权提供，将无法使用此功能，但不影响您正常使用产品的其他功能。")
            .append("3.为了确保信息推送、账号安全和数据统计的正常，我们会申请系统设备权限收集设备信息、日志信息，包括「imei、ismi、idfa、")
            .append("MAC地址").setForegroundColor(Color.RED)
            .appendLine("、android ID」")
            .appendLine("4.为给您提供发布服务，我们可能会申请手机储存权限、相册权限；")
            .appendLine("5.为了基于您所在的位置向您推荐内容，我们可能会申请您的位置权限；")
            .appendLine("6.我们会努力采取各种安全技术保护您的个人信息，未经您同意，我们不会从第三方获取、共享或对外提供您的信息；")
            .appendLine("7.您还可以访问、更正、删除您的个人信息，我们也将提供注销、投诉方式；")
            .appendLine("8.您的信息仅用于为您提供服务，觅营会坚决保障您的隐私信息安全，具体细节也可以查看协议详情；")
            .appendLine("9.如果您仍不同意本隐私协议，很遗憾我们将无法继续为您提供服务。")

        binding.tvContent.text = spanString.create()
    }

}